package com.wego.service;

import com.wego.bean.PageBean;
import com.wego.domain.entity.Strategy;
import com.wego.domain.query.StrategyQuery;
import com.wego.domain.vo.StrategyVO;

import java.util.List;

public interface StrategyService {
    /**
     * 根据ID获取文章信息
     * @param id 文章ID
     * @return 文章信息
     */
    Strategy getById(Integer id);

    /**
     * 批量删除文章
     * @param ids 文章ID列表
     * @return 删除成功的记录数
     */
    int deleteByIds(List<Integer> ids);

    /**
     * 批量插入文章
     * @param strategyList 文章列表
     * @return 插入成功的记录数
     */
    int batchInsert(List<Strategy> strategyList);

    int update(Strategy strategy);

    Integer insert(Strategy strategy);

    String getAhurNameById(Integer id);

    String getGameNameById(Integer id);

    /**
     * 获取带作者名和游戏名的分页数据
     * @param strategyQuery 查询条件
     * @return 带作者名和游戏名的分页数据
     */
    PageBean<StrategyVO> getPageWithNames(StrategyQuery strategyQuery);
    
    /**
     * 根据ID获取带作者名和游戏名的文章详情
     * @param id 文章ID
     * @return 带作者名和游戏名的文章详情
     */
    StrategyVO getPageWithNamesById(Integer id);

}
